use client は境界を宣言する
use client はServer - Client 間の「境界」を宣言するもの
'use client' でマークされているファイルがサーバコンポーネントからインポートされた場合、互換性のあるバンドラは当該モジュールのインポートを、サーバで実行されるコードとクライアントで実行されるコードの境界として扱います。
宣言されたコンポーネントファイルを Root とした Subtree 全体
したがって、必要な場所で必要に応じて宣言する必要がある
怒られたときに初めて use client を使うぐらいでも良い
e.g. onClick イベントハンドラ
code:tsx
"use client";
export function LikeButton({ photoId }: { photoId: string }) {
return (
<button onClick={() => ...}>いいね</button>
)
}